/******
 * 函数指针  指针，指向一个函数
 */
//init
void setup(){
    Serial.begin(9600);
    char c = 'A';
    void (*func)(char *) = lower;   //定义函数指针，参数和返回值与函数一致
    (*func)(&c);                    //函数指针调用函数
    //func(&c);                     //也是对的
    
    Serial.println(c);
    Serial.println((long)lower);    //输出函数地址，函数名本身就是一个指针
}

//loop
void loop() {
  
}

//to upper
void upper(char *ptrC) {
    *ptrC -= 32;  
}

//to lower
void lower(char *ptrC) {
    *ptrC += 32;    
}
